package k1_exercise;

import java.util.Arrays;

public class Array_exercise_fourteenth_other {
    /**
     * 给你一个有序数组 nums ，创建一个新的数组nums2，使每个元素只出现一次
     * 示例 1：
     * 输入：nums = [1,1,2]
     * 输出：nums2 = [1,2]
     * 示例 2：
     * 输入：nums = [0,0,1,1,1,2,2,3,3,4]
     * 输出：nums2 = [0,1,2,3,4]
     */
    public static void main(String[] args) {

        int[] nums = {0,0,1,1,1,2,2,3,3,4};

        int notRepeatNumberCount = 1;

        for (int i = 1; i < nums.length; i++) {
            //如果两两比较后，值相等，则为重复元素，不参与计数；如果不等，则为新元素，计数+1
            if(nums[i-1]!=nums[i]){
                notRepeatNumberCount++;
            }
        }

        //以统计后的非重复元素数量创建新数组
        int[] nums_new = new int[notRepeatNumberCount];
        //初始化新数组的索引
        int nums_new_index = 0;

        nums_new[0] = nums[0];

        for (int i = 1; i < nums.length; i++) {
            //如果两两比较后，值相等，则为重复元素，不参与计数；如果不等，则为新元素，计数+1
            if(nums[i-1]!=nums[i]){
                nums_new[++nums_new_index] = nums[i];
            }
        }

        System.out.println(Arrays.toString(nums_new));
    }
}
